Default Profiles
Many of our partners face challenges when it comes to capturing the expected departure time of a driver and the required energy for charging. Some have implemented creative solutions—such as mobile applications, email integrations, or even on-site tables at charging locations—where drivers can enter this information directly.
However, a significant number of partners prefer to rely on “default profiles” for specific locations. In practice, this means:
- Applying a single profile to an entire parking lot, or
- Associating specific charging stations with distinct profiles to give drivers more flexibility.
What Is a Default Profile?
A default profile is a predefined set of overrides that can be configured either in the portal or via our API. Each profile contains values for:
estimatedDepartureTimerequestedMinEnergyrequestedMaxEnergy
For a full list of fields and their descriptions, please refer to the API documentation.
When a transaction is created, you can optionally include a profile_id in its payload. If provided, our system will fetch the corresponding profile and determine how to set each of the three fields as follows:
-
No Values Provided
IfestimatedDepartureTime,requestedMinEnergy, andrequestedMaxEnergyare all undefined in the transaction payload, we will use the values from the associated profile. -
Some or All Values Provided
For any field that is defined in the payload, we will always use the payload’s value—regardless of whether it exceeds the profile’s corresponding value. For any field that is undefined, we will fill it from the profile.
Example Scenarios
Below we show a couple of example scenarios. Be careful with these examples, as the transaction payloads and profile payloads are not complete—they serve only to explain how overrides occur. For a fully detailed payload, please refer to the API documentation.
-
Scenario A (No Values in Payload)
- Partial Transaction payload:
{
...,
"profile_id": "abc123",
...
} - Profile
abc123defines:estimatedDepartureTime: "2025-06-04T20:00:00Z"requestedMinEnergy: 30000requestedMaxEnergy: 50000
- Result:
- All three fields are populated from Profile
abc123(20:00 on June 4, 30 kWh, 50 kWh).
- All three fields are populated from Profile
- Partial Transaction payload:
-
Scenario B (All Values Provided in Payload)
- Partial Transaction payload:
{
...,
"profile_id": "abc123",
"estimatedDepartureTime": "2025-06-03T18:00:00Z",
"requestedMinEnergy": 20000,
"requestedMaxEnergy": 40000,
...
} - Profile
abc123defines:estimatedDepartureTime: "2025-06-04T20:00:00Z"requestedMinEnergy: 30000requestedMaxEnergy: 50000
- Result:
- Use exactly the payload values: 18:00 on June 3 (even though it’s earlier than the profile), 20 kWh, and 40 kWh.
- Partial Transaction payload:
-
Scenario C (Partial Values Provided)
- Partial Transaction payload:
{
...,
"profile_id": "abc123",
"estimatedDepartureTime": "2025-06-03T18:00:00Z",
...
} - Profile
abc123defines:estimatedDepartureTime: "2025-06-04T20:00:00Z"requestedMinEnergy: 30000requestedMaxEnergy: 50000
- Result:
estimatedDepartureTimeis taken from the payload: "2025-06-03T18:00:00Z".requestedMinEnergyandrequestedMaxEnergyare undefined in the payload, so they are filled from the profile (30 kWh and 50 kWh).
- Partial Transaction payload: